﻿using Entity.Models.dto;
using Entity.Models.Entities;
using Entity.Models.vo;
using System;
using System.Collections.Generic;
using System.Text;

namespace IBLL
{
    /// <summary>
    /// 部门BLL接口
    /// </summary>
    public interface IDepartmentBLL
    {

        /// <summary>
        /// 部门数据列表、搜索
        /// </summary>
        /// <param name="DepartmentName">部门名称</param>
        /// <param name="page">页数</param>
        /// <param name="limit">数据条数</param>
        /// <returns></returns>
        public List<DepartmentDTO> getdepartmentList(string DepartmentName, string page, string limit, out int cont);
        
        /// <summary>
        /// 添加部门
        /// </summary>
        /// <param name="department"></param>
        /// <returns></returns>
        bool AddDepartment(DepartmentInfo department);

        /// <summary>
        /// 删除部门
        /// </summary>
        /// <param name="departmentId"></param>
        /// <returns></returns>
        bool DalateDepartment(string departmentId);

        /// <summary>
        /// 批量删除
        /// </summary>
        /// <param name="departmentIds">部门id</param>
        /// <returns></returns>
        bool DalateDepartmentList(List<String> departmentIds);

        /// <summary>
        /// 修改部门信息
        /// </summary>
        /// <param name="department"></param>
        /// <returns></returns>
        bool UpdataDepartment(DepartmentInfo department);

        /// <summary>
        /// 根据部门id搜索
        /// </summary>
        /// <param name="departmentid">部门id</param>
        /// <returns></returns>
        DepartmentInfo getByDepartment(string departmentid);

        /// <summary>
        /// 获取全部部门信息
        /// </summary>
        /// <returns></returns>
        List<DepartmentDTO> getDepartment();

        /// <summary>
        /// 部门下拉框
        /// </summary>
        /// <returns></returns>
        List<DepartmentVO> getDepartmentSelect();
    }
}
